Documentation
API Error Codes
Overview
The VPT API may return business or validation errors inside the JSON response.
Clients should always validate the response body and not rely exclusively on the HTTP status code.
Example:
{
"code": 1101,
"error": "Incorrect username or password"
}
Error Handling Recommendations
- Always validate the response body.
- Check whether the response contains a
codeanderrorfield. - Do not assume that an HTTP
200 OKresponse means the operation succeeded. - Log both request and response payloads to simplify troubleshooting.
- Validate bookings using
getbookpricebefore callingbooktour.
Authentication Errors
| Code | Description |
|---|---|
| 1101 | Incorrect username or password |
| 1102 | Client has no commission |
| 1103 | User can't make reservations |
1101 - Incorrect username or password
Cause
- Invalid email address.
- Invalid password.
- Invalid integrator token.
- User disabled.
Solution
- Verify credentials.
- Verify the integrator token.
- Contact VPT if the user was recently created or modified.
1102 - Client has no commission
Cause
The client does not have a valid commission configuration.
Solution
Contact VPT support.
1103 - User can't make reservations
Cause
The user is not allowed to create bookings.
Solution
Contact VPT support to review permissions.
1301 - Current user has no rights to do this operation
Cause
The authenticated user does not have sufficient permissions.
Solution
Review the user permissions with VPT.
Catalog and Product Errors
| Code | Description |
|---|---|
| 2001 | Incorrect catalog code |
2001 - Incorrect catalog code
Cause
The catalog identifier supplied does not exist or is not available.
Solution
Use a catalog code returned by getcatalogs.
Booking Errors
| Code | Description |
|---|---|
| 2101 | Incorrect tour codes |
| 2102 | Incorrect departure date |
| 2103 | This tour does not take prenights |
| 2104 | This tour does not take post nights |
| 2105 | This tour does not take in transfers |
| 2106 | This tour does not take out transfers |
| 2107 | Incorrect foodplan |
| 2108 | Incorrect rate |
| 2109 | Reference is mandatory |
| 2110 | At least one room is mandatory |
| 2111 | At least one passenger per room is mandatory |
| 2112 | Passenger name is mandatory |
| 2113 | Passenger surname is mandatory |
| 2114 | Well formed numeric (0-100) passenger age is mandatory |
| 2115 | This tour requires passport in every passenger |
| 2116 | There is no available room for so many passengers |
| 2117 | There has been errors in the booking process |
| 2118 | There has been errors in the assessment process |
| 2119 | At least one passenger is mandatory |
| 2120 | This tour is not web allowed |
2101 - Incorrect tour codes
Cause
The combination of tour identifiers is invalid.
Solution
Use the tour information returned by:
buscatoursgettour
2102 - Incorrect departure date
Cause
The selected departure date is not available for the tour.
Solution
Use a departure date returned by:
buscatoursgettour
Do not generate dates manually.
2107 - Incorrect foodplan
Cause
The selected meal plan is not available.
Solution
Use only food plans returned by gettour.
2108 - Incorrect rate
Cause
The supplied rate does not exist for the selected tour.
Possible reasons
- Invalid rate.
- Invalid category.
- Invalid departure date.
- Rate no longer available.
Solution
Use the rate returned by gettour.
Always validate pricing with getbookprice before booking.
2109 - Reference is mandatory
Cause
The booking reference was not supplied.
Solution
Provide a valid customer reference.
2110 - At least one room is mandatory
Cause
The request does not contain any room.
Solution
Add at least one room to the booking request.
2111 - At least one passenger per room is mandatory
Cause
One or more rooms do not contain passengers.
Solution
Ensure every room contains at least one passenger.
2112 - Passenger name is mandatory
Cause
Passenger first name is missing.
Solution
Provide the passenger name.
2113 - Passenger surname is mandatory
Cause
Passenger surname is missing.
Solution
Provide the passenger surname.
2114 - Well formed numeric (0-100) passenger age is mandatory
Cause
Passenger age is missing or invalid.
Solution
Provide a numeric age between 0 and 100.
Example:
{
"age": 35
}
2115 - This tour requires passport in every passenger
Cause
The selected tour requires passport information.
Solution
Provide passport details for all passengers.
2116 - There is no available room for so many passengers
Cause
The room occupancy is not supported.
Examples
- Too many passengers in one room.
- Invalid adult/child distribution.
Solution
Review room allocation and occupancy rules.
2117 - There has been errors in the booking process
Cause
An internal error occurred during booking.
Solution
- Retry the operation.
- If the error persists, contact VPT support and provide:
- Request payload
- Response payload
- Date and time
2118 - There has been errors in the assessment process
Cause
An internal error occurred during price calculation.
Solution
- Verify request data.
- Recalculate using
getbookprice. - Verify the selected rate.
2119 - At least one passenger is mandatory
Cause
No passengers were supplied.
Solution
Add at least one passenger.
2120 - This tour is not web allowed
Cause
The selected tour cannot be booked through the API.
Solution
Contact VPT support.
Reservation Errors
| Code | Description |
|---|---|
| 1400 | No Reservation Service have been found with the supplied identifier |
| 1401 | It is impossible to void this reservation service at this point |
| 3006 | This reservation cannot be voided |
1400 - Reservation service not found
Cause
The supplied reservation service identifier does not exist.
Solution
Verify the reservation service identifier.
1401 - Service cannot be voided
Cause
The service is no longer eligible for cancellation.
Solution
Review cancellation conditions.
3006 - This reservation cannot be voided
Cause
The reservation cannot be cancelled due to business rules.
Solution
Contact VPT support if clarification is required.
Integration Errors
| Code | Description |
|---|---|
| 3001 | Empty result |
| 3002 | Not enough data to send the email |
| 3003 | It has not been possible to reserve the circuit. There are no defined legs |
| 3004 | Details of the optional transfer must be included in the request |
| 3005 | Integrator Token is required |
| 3007 | Missing tag language |
3001 - Empty result
Cause
The query returned no data.
Solution
Review filters and search criteria.
3004 - Optional transfer details required
Cause
A transfer supplement was selected without providing the required details.
Solution
Include all transfer information requested by the endpoint.
3005 - Integrator Token is required
Cause
The request does not contain an integrator token.
Solution
Include:
{
"logindata": {
"integrator_token": "YOUR_TOKEN"
}
}
3007 - Missing tag language
Cause
The language parameter is missing.
Solution
Include a valid language code in the request.
Example:
{
"language": "en"
}
Support
If an error persists after validating the request:
- Save the complete request JSON.
- Save the complete response JSON.
- Record the date and time of the request.
- Contact VPT support providing the above information.
This information allows VPT to locate the request quickly and diagnose the issue.